package com.letv.whatslive.model.convert;

import com.letv.whatslive.model.PaikeAmbassador;
import com.letv.whatslive.model.PaikeSociaty;
import com.letv.whatslive.model.utils.ObjUtils;
import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import org.apache.commons.lang3.StringUtils;

/**
 * Created by shenyue on 16-6-16.
 */
public class PaikeSociatyConvert {

    public static DBObject castPaikeSociatyToDBObject(PaikeSociaty paikeSociaty) {
        DBObject dbo = new BasicDBObject();
        if (paikeSociaty.getId() != null) {
            dbo.put("_id", paikeSociaty.getId());
        }
        if (paikeSociaty.getUserId() != null) {
            dbo.put("userId", paikeSociaty.getUserId());
        }
        dbo.put("sociatyName", ObjUtils.ifNull(paikeSociaty.getSociatyName(), ""));
        if(StringUtils.isNotBlank(paikeSociaty.getSociatyContacter()))
            dbo.put("sociatyContacter", ObjUtils.toString(paikeSociaty.getSociatyContacter()));
        if(StringUtils.isNotBlank(paikeSociaty.getSociatyContacterPhoneNo()))
            dbo.put("sociatyContacterPhoneNo", ObjUtils.toString(paikeSociaty.getSociatyContacterPhoneNo()));
        dbo.put("createTime", ObjUtils.toLong(paikeSociaty.getCreateTime(), System.currentTimeMillis()));
        dbo.put("updateTime", ObjUtils.toLong(paikeSociaty.getUpdateTime(), System.currentTimeMillis()));
        if(paikeSociaty.getCreateByPersonLoginName()!=null)
            dbo.put("createByPersonLoginName",ObjUtils.toString(paikeSociaty.getCreateByPersonLoginName()));
        dbo.put("bankCardNo", ObjUtils.ifNull(paikeSociaty.getBankCardNo(), ""));
        if (paikeSociaty.getBankId() != null) {
            dbo.put("bankId", paikeSociaty.getBankId());
        }
        if(paikeSociaty.getCreateByPersonLoginName()!=null)
            dbo.put("createByPersonLoginName",ObjUtils.toString(paikeSociaty.getCreateByPersonLoginName()));
        if(StringUtils.isNotBlank(paikeSociaty.getAlipayId()))
            dbo.put("alipayId",ObjUtils.toString(paikeSociaty.getAlipayId()));
        dbo.put("qualificationPic1",paikeSociaty.getQualificationPic1());
        dbo.put("qualificationPic2",paikeSociaty.getQualificationPic2());
        dbo.put("qualificationPic3",paikeSociaty.getQualificationPic3());
        dbo.put("qualificationPic4",paikeSociaty.getQualificationPic4());
        dbo.put("qualificationPic5",paikeSociaty.getQualificationPic5());
        return dbo;
    }

    public static PaikeSociaty castDBObjectToPaikeSociaty(DBObject dbObject){
        if(dbObject != null) {
            PaikeSociaty paikeSociaty = new PaikeSociaty();
            paikeSociaty.setId(ObjUtils.toLong(dbObject.get("_id")));
            paikeSociaty.setUserId(ObjUtils.toLong(dbObject.get("userId")));
            paikeSociaty.setSociatyName(ObjUtils.toString(dbObject.get("sociatyName")));
            paikeSociaty.setSociatyContacter(ObjUtils.toString(dbObject.get("sociatyContacter")));
            paikeSociaty.setSociatyContacterPhoneNo(ObjUtils.toString(dbObject.get("sociatyContacterPhoneNo")));
            paikeSociaty.setCreateTime(ObjUtils.toLong(dbObject.get("createTime")));
            paikeSociaty.setUpdateTime(ObjUtils.toLong(dbObject.get("updateTime")));
            paikeSociaty.setCreateByPersonLoginName(ObjUtils.toString(dbObject.get("createByPersonLoginName")));
            paikeSociaty.setBankCardNo(ObjUtils.toString(dbObject.get("bankCardNo"), ""));
            paikeSociaty.setBankId(ObjUtils.toLong(dbObject.get("bankId")));
            paikeSociaty.setAlipayId(ObjUtils.toString(dbObject.get("alipayId"), ""));
            paikeSociaty.setQualificationPic1(ObjUtils.toString(dbObject.get("qualificationPic1"), ""));
            paikeSociaty.setQualificationPic2(ObjUtils.toString(dbObject.get("qualificationPic2"), ""));
            paikeSociaty.setQualificationPic3(ObjUtils.toString(dbObject.get("qualificationPic3"), ""));
            paikeSociaty.setQualificationPic4(ObjUtils.toString(dbObject.get("qualificationPic4"), ""));
            paikeSociaty.setQualificationPic5(ObjUtils.toString(dbObject.get("qualificationPic5"), ""));
            return paikeSociaty;
        }else{
            return null;
        }

    }
}
